package box2d

import "time"

/// Timer for profiling. This has platform specific code and may
/// not work on every platform.
type B2Timer struct {
	m_start time.Time
}

///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
// B2Timer.cpp
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////

func MakeB2Timer() B2Timer {
	timer := B2Timer{}
	timer.Reset()
	return timer
}

func (timer *B2Timer) Reset() {
	timer.m_start = time.Now()
}

func (timer B2Timer) GetMilliseconds() float64 {
	return time.Now().Sub(timer.m_start).Seconds() * 1000
}
